package edu.dayu.demo3;

/**
 * 返回数组下标，下标左边和右边之和相等
 * 输入：nums = [2, 1, -1]
 * 输出：0
 * 解释：
 * 中心下标是 0 。
 * 左侧数之和 sum = 0 ，（下标 0 左侧不存在元素），
 * 右侧数之和 sum = nums[1] + nums[2] = 1 + -1 = 0 。
 *
 * 思路： 先计算一遍数组的和，然后再循环一遍，开始计算每个下标两侧的值。
 */
public class 左右两边子数组的和相等 {
    public static void main(String[] args) {
        int[] ints = {2,1,-1};
        System.out.println(pivotIndex(ints));
    }

    public static int pivotIndex(int[] nums) {
        int temp = -1;
        int sum = 0;
        for (int i = 0; i < nums.length; i++) {
            sum+=nums[i];
        }
        int left = 0;
        for (int i = 0; i < nums.length; i++) {
            if (left == sum-nums[i]) {
                temp = i;
                break;
            }
            left+=nums[i];
            sum-=nums[i];
        }
        return temp;
    }
}
